# 使用官方的Golang镜像作为基础镜像  
FROM golang:1.21.1

# 设置工作目录  
WORKDIR $GOPATH/src/app  
  
# 将当前目录的内容复制到容器的工作目录  
COPY . $GOPATH/src/app
 
# 配置环境  
RUN go env -w GO111MODULE=on
RUN go env -w GOPROXY=https://goproxy.io
RUN go env -w GOOS=linux
RUN go env -w GOARCH=amd64

# 安装一下sqlite的一个软件，可以在宿主机上安装
# RUN apt-get update && apt-get install -y libsqlite3-dev

RUN go env -w CGO_ENABLED=1

# 切换到主程序目录
RUN cd $GOPATH/src/app

# 生成一下接口文档
CMD ["swag","init"]

# 构建并安装应用程序
RUN go build main.go

# 暴露程序运行端口
EXPOSE 8080
# 设置应用程序在容器中的运行命令  
ENTRYPOINT ["./main"]